穩定版發布日期:2025 年 5 月 27 日
除非另有說明,否則下列變更適用於 Android、ChromeOS、Linux、macOS 和 Windows 的 Chrome 137 穩定版。
CSS 和 UI
CSS if()
函式
CSS if()
函式可讓您以簡潔的方式表示條件值。它會接受一系列以半形分號分隔的條件值組合。這個函式會依序評估每個條件,並傳回與第一個為 true 條件相關聯的值。如果沒有任何條件評估為 true,函式會傳回空的符記串流。這樣一來,您就能以簡單扼要的方式表達複雜的條件邏輯。
範例:
div {
color: var(--color);
background-color: if(style(--color: white): black; else: white);
}
.dark {
--color: black;
}
.light {
--color: white;
}
<div class="dark">dark</div>
<div class="light">light</div>
追蹤錯誤 #346977961 | ChromeStatus.com 項目 | 規格
CSS reading-flow
、reading-order
屬性
reading-flow
CSS 屬性會控制 Flex、格線或區塊版面配置中元素向無障礙工具公開的順序,並使用分頁鍵鍵盤焦點導覽功能將焦點放在該元素上。
reading-order
CSS 屬性可讓作者手動覆寫閱讀流程容器中的順序。這是一個整數,預設值為 0
。
如要進一步瞭解這些屬性,請參閱「使用 CSS 閱讀流程,實現邏輯的順序焦點導覽」,並試用一些範例。
追蹤錯誤 #40932006 | ChromeStatus.com 項目 | 規格
忽略草書字母間距
這項功能會新增邏輯,根據開發人員指定的規範,忽略書寫體字型的字間距設定,確保字間距不會破壞字詞結構,並為使用書寫體字型的使用者提供更優質的使用者體驗。
有了這項功能,即使字型沒有進階的排版功能,Chrome 也能確保連體字體的字元可讀且間距正確。
在 Chromium 中,這項設定適用於阿拉伯文、哈尼夫羅興亞文、曼達安文、蒙古文、N'Ko、Phags Pa 和敘利亞文,因為這些文字根據規格視為草書。
追蹤錯誤 #40618336 | ChromeStatus.com 項目 | 規格
Selection API getComposedRanges
和 direction
這項功能為 Selection API 提供兩種新的 API 方法:
Selection.direction
,會將所選項目的方向傳回為none
、forward
或backward
Selection.getComposedRanges()
會傳回 0 或 1 個組合StaticRange
組合 StaticRange
可跨越陰影邊界,而一般 Range
則無法。
例如:
const range = getSelection().getComposedRanges({ shadowRoots: [root] });
如果所選範圍跨越 shadowRoots
清單中未提供的陰影根目錄邊界,則 StaticRange
的端點會重新設定範圍,並位於該樹狀結構之外。這樣可確保 Chrome 不會揭露不明的陰影樹狀結構。
追蹤錯誤 #40286116 | ChromeStatus.com 項目 | 規格
支持「offset-path: shape()
」
支援 offset-path: shape()
,以便使用回應式形狀設定動畫路徑。
追蹤錯誤 #389713717 | ChromeStatus.com 項目 | 規格
支援 SVGSVGElement
上的 transform
屬性
這項功能可讓您使用 transform
屬性,直接將轉換屬性 (例如縮放、旋轉、平移和扭曲) 套用至 <svg>
根元素。這項強化功能可讓您整體操作整個 SVG 座標系統或其內容,在建立動態、回應式和互動向量圖形時,提供更大的彈性。支援此屬性後,您就能轉換 <svg>
元素,而無須額外使用包裝函式元素或複雜的 CSS 解決方法,藉此簡化建構可調整大小及動畫效果的網頁圖形流程。
追蹤錯誤 #40313130 | ChromeStatus.com 項目 | 規格
accent-color
屬性的系統強調色
這樣一來,您就能使用作業系統的強調色為表單元素著色。使用 accent-color
CSS 屬性,您可以確保表單元素 (例如核取方塊、單選按鈕和進度列) 會自動採用使用者作業系統定義的強調色。這項功能自 2021 年起已在 macOS 上支援,現在也支援 Windows 和 ChromeOS。
追蹤錯誤 #40764875 | ChromeStatus.com 項目 | 規格
允許 <use>
省略片段,參照外部文件的根元素。
這項功能會放寬參照需求,簡化 SVG <use>
元素。在 Chrome 137 之前,您必須明確參照 SVG 文件中的片段。如果未提供片段 ID,<use>
就無法解析目標,且不會轉譯或參照任何內容。
例如:<use>
元素參照片段 ID 的外部檔案:
<svg>
<use xlink:href="myshape.svg#icon"></use>
</svg>
在本範例中,#icon
是指向 myshape.svg
中 id="icon"
的元素片段 ID。
不含片段 ID:
<svg>
<use xlink:href="myshape.svg"></use>
</svg>
有了這項功能,只要省略片段或提供外部 SVG 檔案名稱,系統就會自動參照根元素,因此您不必為了將 ID 指派給根元素而變更參照的文件。這項強化功能可簡化手動編輯程序,提高效率。
追蹤錯誤 #40362369 | ChromeStatus.com 項目 | 規格
畫布浮點顏色類型
引入使用浮點像素格式 (而非 8 位元固定點) 的功能,適用於 CanvasRenderingContext2D
、OffscreenCanvasRenderingContext2D
和 ImageData
。
這對於高精確度應用程式 (例如醫學可視化)、高動態範圍內容和線性工作色彩空間而言,都是必要的。
追蹤錯誤 #40245602 | ChromeStatus.com 項目 | 規格
view-transition-name: match-element
match-element
值會根據元素的 ID 產生專屬 ID,並為此元素重新命名。這個方法適用於單頁應用程式案例,當中元素會移動,而您想要使用檢視畫面轉場為其加上動畫效果。
追蹤錯誤 #365997248 | ChromeStatus.com 項目 | 規格
付款
為 payment
WebAuthn 憑證建立作業擲回的對齊錯誤類型:SecurityError
變成 NotAllowedError
修正為 payment
憑證建立 WebAuthn 憑證時擲回的錯誤類型。由於歷史規格不相符,在跨來源 iframe 中建立 payment
憑證時,如果沒有使用者啟用,系統會擲回 SecurityError
,而非 NotAllowedError
,後者是針對非付款憑證擲回的錯誤。
這是一項破壞性變更,但屬於小眾變更。先前偵測到擲回錯誤類型 (例如 e instanceof SecurityError
) 的程式碼會受到影響。一般來說,在建立憑證時處理錯誤的程式碼 (例如 catch (e)
) 會繼續正常運作。
追蹤錯誤 #41484826 | ChromeStatus.com 項目 | 規格
網站 API
Blob 網址分割:擷取/瀏覽
為了延續儲存空間分區功能,Chrome 已實作 Blob 網址存取的儲存空間鍵分區 (頂層網站、影格來源和 has-cross-site-ancestor 布林值),但頂層瀏覽會繼續只依據影格來源進行分區。這項行為類似於 Firefox 和 Safari 目前實作的行為,並將 Blob 網址用法與其他儲存空間 API 在儲存空間分割作業中使用的分割區劃分法保持一致。此外,Chrome 現已針對轉譯器啟動的 Blob 網址頂層瀏覽,強制執行 noopener,其中對應的網站與執行瀏覽的頂層網站屬於不同網站。這可讓 Chrome 與 Safari 的行為一致,相關規格也已更新,以反映這些變更。
追蹤錯誤 #40057646 | ChromeStatus.com 項目
無回應網頁的當機報告中的呼叫堆疊
當網頁因 JavaScript 程式碼執行無限迴圈或其他非常長的運算而無回應時,這項功能會擷取 JavaScript 呼叫堆疊。這有助於開發人員找出無回應問題的原因,並更輕鬆地修正問題。當原因為無回應時,JavaScript 呼叫堆疊會包含在當機回報 API 中。
追蹤錯誤 #1445539 | ChromeStatus.com 項目 | 規格
Document-Isolation-Policy
Document-Isolation-Policy
可讓文件為自身啟用 crossOriginIsolation
,無須部署 COOP 或 COEP,也不受網頁的 crossOriginIsolation
狀態影響。這項政策由程序隔離功能支援。此外,文件非 CORS 跨來源子資源將在沒有憑證的情況下載入,或需要有 CORP 標頭。
追蹤錯誤 #333029146 | ChromeStatus.com 項目 | 規格
Ed25519
在網路密碼學中
這項功能會在 Web Cryptography API 中新增對 Curve25519
演算法的支援,也就是簽署演算法 Ed25519
追蹤錯誤 #1370697 | ChromeStatus.com 項目 | 規格
HSTS 追蹤防範
使用 HSTS 快取,減少第三方追蹤使用者。
這項功能只允許頂層導覽的 HTTP 嚴格傳輸安全性升級,並封鎖子資源要求的 HTTP 嚴格傳輸安全性升級。這樣一來,第三方網站就無法使用 HSTS 快取,以便跨網站追蹤使用者。
追蹤錯誤 #40725781 | ChromeStatus.com 項目
WebAssembly
JavaScript Promise 整合
JavaScript Promise 整合 (JSPI) 是一種 API,可讓 WebAssembly 應用程式整合 JavaScript Promise。
這可讓 WebAssembly 程式充當 Promise 的產生器,並讓 WebAssembly 程式與含有 Promise 的 API 互動。
特別是,當應用程式使用 JSPI 呼叫含有承諾 (JavaScript) API 時,WebAssembly 程式碼會暫停;而 WebAssembly 程式的原始呼叫端會獲得承諾,在 WebAssembly 程式最終完成時會履行。
WebAssembly 分支提示
告知引擎特定分支指令很可能會採用特定路徑,進而改善編譯 WebAssembly 程式碼的效能。
這可讓引擎做出更明智的程式碼版面配置決策 (改善指令快取命中率) 和註冊分配。
WebGPU
externalTexture
繫結的 GPUTextureView
建立 GPUBindGroup
時,現在允許使用 GPUTextureView
進行 externalTexture
繫結。
追蹤錯誤 #398752857 | ChromeStatus.com 項目 | 規格
copyBufferToBuffer
超載
GPUCommandEncoder
copyBufferToBuffer()
方法現在提供更簡單的方式,可使用含有選用偏移量和大小參數的新過載來複製整個緩衝區。
Enterprise
IP 位址記錄和報表
Chrome Enterprise 會收集及回報本機和遠端 IP 位址,並將這些 IP 位址傳送至安全調查記錄 (SIT),藉此強化安全監控和事件回應功能。此外,Chrome Enterprise 還可讓管理員選擇透過 Chrome Enterprise 報表連接器,將 IP 位址傳送給第一方和第三方 SIEM 供應商。
這項功能適用於 Chrome Enterprise 基本版客戶。
來源試用
全影格速率轉譯封鎖屬性
將新的轉譯阻斷符記 full-frame-rate
新增至阻斷屬性。當轉譯器遭到 full-frame-rate
權杖封鎖時,轉譯器會以較低的幀率運作,以便保留更多資源供載入作業使用。
追蹤錯誤 #397832388 | ChromeStatus.com 項目
在未轉譯的 iframe 上暫停媒體播放
新增 media-playback-while-not-rendered
權限政策,讓嵌入者網站暫停未算繪的嵌入式 iframe 媒體播放,也就是將其 display
屬性設為 none
。這樣一來,開發人員就能打造更符合使用者需求的體驗,並讓瀏覽器處理使用者看不到的內容播放作業,進而改善效能。
Origin Trial | 追蹤錯誤 #351354996 | ChromeStatus.com 項目
Rewriter API
Rewriter API 會在裝置端 AI 語言模型的支援下,以要求的方式轉換及重寫輸入的文字。開發人員可以使用這個 API 移除文字中的贅字,以符合字數限制;重新表達訊息,以符合目標對象或使訊息更具建設性 (如果訊息使用有害的用語);重新表達貼文或文章,以使用更簡單的字詞和概念等等。
Origin Trial | 追蹤錯誤 #358214322 | ChromeStatus.com 項目 | 規格
Writer API
Writer API 可用於在收到寫作工作提示時,透過裝置端 AI 語言模型撰寫新內容。開發人員可以使用這個 API 產生結構化資料的文字說明,根據評論或產品說明撰寫產品相關文章,將優缺點清單展開為完整檢視畫面等等。